#ifndef __NAME_H__
#define __NAME_H__

#include <string>

#include "ContentParticules.h"
#include "Printer.h"

class Name : public ContentParticules
{
	public:
		/**
		* Constructeur initialisant le nom et la cardinalité de Name.
		* param	:	name : nom de Name.
		*		card : cardinalité de Name.	
		*/
		Name( const std::string& name, CARDINALITY card );
		virtual ~Name();

		/**
		* Getters et Setters
		*/
		const std::string& getName() const;

		/**
		* Permet un afficage de l'élément avec la syntaxe d'une DTD.
		*/		
		virtual void printMe();

		/**
		* Crée l'expression régulière de l'élément.
		*/
		virtual std::string toRegExp();

	protected:
		/**
		* Nom du Name 
		*/
		std::string name;
};

#endif // #define __NAME_H__

